#pragma once
class Sun;
#include <Windows.h>
#include <windows.devices.input.h>
#include "messageHandler.h"
#include <math.h>
#include "Drawable.h"
#include "LightSource.h"
using namespace std;
class Sun : public Drawable, public LightSource
{
public:
	Sun(void);
	Sun(int width, int height, int tWidth, int tHeight);
	
	virtual void draw();
	void setMatrix();
	~Sun(void);
	virtual void setupLightMatrix();
	virtual void setupLightSource();
	void tick();
private:
	int ticker;
	int width, height;
	int angle;
	GLUquadric* G ;
	int textureWidth, textureHeight;
	struct Eye{
		float X,Y,Z;
		Eye(){X=0;Y=0;Z=0;};
		Eye(float x, float y, float z){
			X = x;
			Y = y;
			Z = z;
		}
	};
	struct LookAt{
		float X,Y,Z;
		
		LookAt(){X=0;Y=0;Z=0;};
		LookAt(float x, float y, float z){
			X = x;
			Y = y;
			Z = z;
		}
	};

	Eye eye;
	LookAt lookAt;
};

